package com.cuckoo.cuckoo_app2.utils;

public enum MessageCodeUtils {

    // 200  300 500
    SUCCESS(200, "成功"),
    FAIL(500, "失败"),
    WARNING(300, "警告"),
    // 接单任务
    TASK_SERVEICE(2051, "接单任务"),
    // 更新后台数据
    UPDATE_BACKGROUND_DATA(2060, "更新后台数据"),
    // 登录过期
    DELETE_LOGIN_EXPIRE(3001, "登录过期"),
    // 应用更新
    UPDATE_APP(3002, "应用更新"),
    ERROR(800, "系统错误");

    private final int code;
    private final String message;

    // 构造函数
    MessageCodeUtils(int code, String message) {
        this.code = code;
        this.message = message;
    }

    public int getCode() {
        return code;
    }

    // 获取状态码对应的描述信息
    public String getMessage() {
        return message;
    }

    /**
     * 根据代码值从MessageCodeUtils枚举中查找对应的枚举项。
     *
     * @param code 要查找的代码值。
     * @return 对应的枚举项，如果找不到则返回null。
     */
    public static MessageCodeUtils fromCode(int code) {
        // 遍历枚举值，查找与输入代码值匹配的枚举项
        for (MessageCodeUtils codeUtils : MessageCodeUtils.values()) {
            // 如果代码值匹配，则返回当前枚举项
            if (codeUtils.getCode() == code) {
                return codeUtils;
            }
        }
        // 如果遍历完所有枚举项都没有找到匹配的代码值，则返回null
        return null;
    }


}
